package com.redis.base;

import com.alibaba.fastjson.JSONObject;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.Transaction;


/**
 * @author ：qs
 * @date ：Created in 2021/8/14
 * @description：测试Redis事务
 * @modified By：
 */
public class TxTest {

    public static void main(String[] args) {
        Jedis jedis = new Jedis("39.103.204.17", 6379);

        JSONObject jsonObject = new JSONObject();
        jsonObject.put("hello","word");
        jsonObject.put("name", "aoyama");
        // 开启事务
        Transaction tx = jedis.multi();
        String result = jsonObject.toJSONString();
        try {
            // 注意：此处使用的是tx的set值的
            tx.set("user1", result);
            tx.set("user2", result);
            // 执行事务
            tx.exec();
        } catch (Exception e) {
            e.printStackTrace();
            // 事务执行失败取消
            tx.discard();
        } finally {
            System.out.println("user1：" + jedis.get("user1"));
            System.out.println("user2：" + jedis.get("user2"));
            jedis.close();
        }
    }
}
